The ``save text image after execution bit'' of the mode is
cleared [see _cccc_hhhh_mmmm_oooo_dddd(2)].
_OOOO______TTTT_RRRR_UUUU_NNNN_CCCC If the shared memory object exists, its length is truncated to
zero and the mode and owner are unchanged.
_OOOO______EEEE_XXXX_CCCC_LLLL If _OOOO______EEEE_XXXX_CCCC_LLLL and _OOOO______CCCC_RRRR_EEEE_AAAA_TTTT are set, _ssss_hhhh_mmmm______oooo_pppp_eeee_nnnn will fail if the memory
object exists. The check for the existence of the memory object
and the creation of the name in the file namespace is atomic with
respect to other processes executing _ssss_hhhh_mmmm______oooo_pppp_eeee_nnnn naming the same
memory object in the same directory with _OOOO______EEEE_XXXX_CCCC_LLLL and _OOOO______CCCC_RRRR_EEEE_AAAA_TTTT set.
Shared memory objects and their associated data persist until the memory
object is unlinked and all other references are dropped [see
_ssss_hhhh_mmmm______uuuu_nnnn_llll_iiii_nnnn_kkkk(2) and _cccc_llll_oooo_ssss_eeee(2)].
If _p_a_t_h is a symbolic link and _OOOO______CCCC_RRRR_EEEE_AAAA_TTTT and _OOOO______EEEE_XXXX_CCCC_LLLL are set, the link is
not followed.
The new shared memory object file descriptor is the lowest numbered file
descriptor available and is set to close upon the execution of an _eeee_xxxx_eeee_cccc
system call.
The _FFFF_DDDD______CCCC_LLLL_OOOO_EEEE_XXXX_EEEE_CCCC file descriptor flag of the newly created shared memory
object is set. This flag will cause the file descriptor to close upon
the execution of an _eeee_xxxx_eeee_cccc system call.
Memory object file descriptor flag values may be modified following
_ssss_hhhh_mmmm______oooo_pppp_eeee_nnnn as described in _ffff_cccc_nnnn_tttt_llll(2).
If _OOOO______CCCC_RRRR_EEEE_AAAA_TTTT is set and the memory object did not previously exist,
_ssss_hhhh_mmmm______oooo_pppp_eeee_nnnn marks the following memory object fields for update: _ssss_tttt______aaaa_tttt_iiii_mmmm_eeee,
_ssss_tttt______cccc_tttt_iiii_mmmm_eeee and _ssss_tttt______mmmm_tttt_iiii_mmmm_eeee. Further, the _ssss_tttt______tttt_iiii_mmmm_eeee and _ssss_tttt______mmmm_tttt_iiii_mmmm_eeee fields of the
memory object parent directory are also marked for update.
If _OOOO______TTTT_RRRR_UUUU_NNNN_CCCC is set and the memory object did previously exist, _ssss_hhhh_mmmm______oooo_pppp_eeee_nnnn
marks the _ssss_tttt______cccc_tttt_iiii_mmmm_eeee and _ssss_tttt______mmmm_tttt_iiii_mmmm_eeee fields for update.
There is a system enforced limit on the number of open file descriptors
per process _{{{{_OOOO_PPPP_EEEE_NNNN______MMMM_AAAA_XXXX_}}}}, whose value is returned by the _gggg_eeee_tttt_dddd_tttt_aaaa_bbbb_llll_eeee_ssss_iiii_zzzz_eeee(2)
function.
If the character string, pointed to by _p_a_t_h, is prefixed with _////_dddd_eeee_vvvv then
unpredictable results may occur. Devices are opened using the _oooo_pppp_eeee_nnnn(2)
function.
The shared memory object is opened unless one or more of the following
are true:
_EEEE_AAAA_CCCC_CCCC_EEEE_SSSS The shared memory object, named by _p_a_t_h, does not exist and write
permission is denied by the parent directory of the memory object
The length of the _p_a_t_h argument exceeds {_PPPP_AAAA_TTTT_HHHH______MMMM_AAAA_XXXX}, or the length
of a _p_a_t_h component exceeds {_NNNN_AAAA_MMMM_EEEE______MMMM_AAAA_XXXX} while {______PPPP_OOOO_SSSS_IIII_XXXX______NNNN_OOOO______TTTT_RRRR_UUUU_NNNN_CCCC} is
in effect.
_EEEE_NNNN_FFFF_IIII_LLLL_EEEE The system file table is full.
_EEEE_NNNN_OOOO_EEEE_NNNN_TTTT _OOOO______CCCC_RRRR_EEEE_AAAA_TTTT is not set and the shared memory object does not exist.
_EEEE_NNNN_OOOO_EEEE_NNNN_TTTT _OOOO______CCCC_RRRR_EEEE_AAAA_TTTT is set and a component of the path prefix does not exist
or is the null pathname.
_EEEE_NNNN_OOOO_SSSS_PPPP_CCCC _OOOO______CCCC_RRRR_EEEE_AAAA_TTTT and _OOOO______EEEE_XXXX_CCCC_LLLL are set, and the file system is out of inodes
or the directory in which the entry for the new memory object is
being placed cannot be extended because there is no space left on
_EEEE_NNNN_OOOO_SSSS_PPPP_CCCC _OOOO______CCCC_RRRR_EEEE_AAAA_TTTT is set and the directory that would contain the memory
object cannot be extended.
_EEEE_NNNN_OOOO_TTTT_DDDD_IIII_RRRR A component of the path prefix is not a directory.
_EEEE_TTTT_IIII_MMMM_EEEE_DDDD_OOOO_UUUU_TTTT
The memory object of the shm_open is located on a remote system
which is not available [see _iiii_nnnn_tttt_rrrr_oooo(2)].
_EEEE_RRRR_OOOO_FFFF_SSSS The named memory object resides on a read-only file system and
either _OOOO______WWWW_RRRR_OOOO_NNNN_LLLL_YYYY, _OOOO______RRRR_DDDD_WWWW_RRRR, _OOOO______CCCC_RRRR_EEEE_AAAA_TTTT, or _OOOO______TTTT_RRRR_UUUU_NNNN_CCCC is set in _o_f_l_a_g (if